//
//  BlockQueue.h
//  IMChezhil
//
//  Created by zhangliucheng on 15/7/23.
//  Copyright (c) 2015年 CheZhil. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface IMBlockQueue : NSObject

/**
 *  在队列顶部添加元素
 */
- (void)addFirst:(id)obj;

/**
 *  向队列尾部添加个元素.
 */
- (void)offer:(id)obj;

/**
 *  获取队列顶部的元素，但不移除.
 */
- (id)peek;

/**
 *  获取队列顶部的元素，并且移除.
 *
 *  @param interval 在规定时间内获取元素，超过时间还没有元素，返回nil
 */
- (id)poll:(NSTimeInterval)interval;

/**
 *  队列里面元素数量.
 */
- (NSInteger)count;
@end
